package cn.xu.tool.big.a.compments;

/**
 * 类名: IndicatorCalculator
 * 描述: TODO
 * 作者: ClarkXu clark2021@qq.com
 * 日期: 2025/7/8
 */
import cn.xu.tool.big.a.dto.KLine;

import java.util.List;

public class IndicatorCalculator {

    // 计算移动平均线
    public static double[] calculateMA(List<KLine> kLines, int period) {
        double[] ma = new double[kLines.size()];
        for (int i = 0; i < kLines.size(); i++) {
            if (i < period - 1) {
                ma[i] = 0; // 不足周期，无法计算
                continue;
            }
            double sum = 0;
            for (int j = 0; j < period; j++) {
                sum += kLines.get(i - j).getClose();
            }
            ma[i] = sum / period;
        }
        return ma;
    }
}